package com.ktgj.customer.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ktgj.common.core.annotation.Excel;
import com.ktgj.common.core.web.domain.BaseEntity;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * 职位对象 position
 * 
 * @author ruoyi
 * @date 2021-07-27
 */
public class Position extends BaseEntity
{
    public Position()
    {
        lstMenu = new ArrayList<>();
    }

    private static final long serialVersionUID = 1L;

    /** 职位ID */
    private Long positionId;

    /** 部门ID */
    @Excel(name = "部门ID")
    private Long deptId;

    /** 职位名称 */
    @Excel(name = "职位名称")
    private String positionName;

    /** 职位级别 */
    @Excel(name = "职位级别")
    private Long positionLevel;

    /** 职位描述 */
    @Excel(name = "职位描述")
    private String positionDesc;

    /**
     * 管理权限
     */
    @Excel(name = "管理权限")
    private Long permission;

    /** 创建时间 */
    @Excel(name = "创建时间")
    private Date createTime;

    /** 创建时间 */
    @Excel(name = "创建时间")
    private String createDate;

    /** 是否启用 */
    @Excel(name = "是否启用")
    private String enableStart;

    /**
     * 管理权限集合
     * */
    private List<Long> permissionList;

    /**
     * 菜单id集合
     * */
    private List<String> positionMenuList;

    private List<MenuDTO> lstMenu;

    public List<MenuDTO> getLstMenu()
    {
        return lstMenu;
    }

    public void setLstMenu(List<MenuDTO> lstMenu)
    {
        this.lstMenu = lstMenu;
    }

    public List<String> getPositionMenuList() {
        return positionMenuList;
    }

    public void setPositionMenuList(List<String> positionMenuList) {
        this.positionMenuList = positionMenuList;
    }

    public List<Long> getPermissionList() {
        return permissionList;
    }

    public void setPermissionList(List<Long> permissionList) {
        this.permissionList = permissionList;
    }

    public String getCreateDate() {
        return createDate;
    }

    public void setCreateDate(String createDate) {
        this.createDate = createDate;
    }

    public String getEnableStart() {
        return enableStart;
    }

    public void setEnableStart(String enableStart) {
        this.enableStart = enableStart;
    }

    @Override
    public Date getCreateTime() {
        return createTime;
    }

    @Override
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Long getPermission() {
        return permission;
    }

    public void setPermission(Long permission) {
        this.permission = permission;
    }

    public void setPositionId(Long positionId)
    {
        this.positionId = positionId;
    }

    public Long getPositionId() 
    {
        return positionId;
    }
    public void setDeptId(Long deptId) 
    {
        this.deptId = deptId;
    }

    public Long getDeptId() 
    {
        return deptId;
    }
    public void setPositionName(String positionName) 
    {
        this.positionName = positionName;
    }

    public String getPositionName() 
    {
        return positionName;
    }
    public void setPositionLevel(Long positionLevel) 
    {
        this.positionLevel = positionLevel;
    }

    public Long getPositionLevel() 
    {
        return positionLevel;
    }
    public void setPositionDesc(String positionDesc) 
    {
        this.positionDesc = positionDesc;
    }

    public String getPositionDesc() 
    {
        return positionDesc;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("positionId", getPositionId())
            .append("deptId", getDeptId())
            .append("positionName", getPositionName())
            .append("positionLevel", getPositionLevel())
            .append("positionDesc", getPositionDesc())
            .toString();
    }
}
